//用户缓存信息
const user = (uni.getStorageSync('userInfo'));
//跳转至小程序登录页
const toLogin = () => {
	setTimeout(() => {
		uni.redirectTo({
			url: '/pages/user/user'
		});
	}, 2000)
}
//获取session信息

const check = () => {
	const promise = new Promise((resolve, reject) => {
		uni.checkSession({
			success() {
				console.log('状态未过期')
				//未过期
				resolve(0)
			},
			fail() {
				console.log('状态已过期')
				//已过期
				resolve(1)
			}
		})
	}).catch(res => {
		uni.showToast({
			icon: 'none',
			title: res.errMsg || '验证session失效',
			duration: 2000
		});
	})

	return promise
}


//小程序登录态刷新
const loadLoginState = async function() {
	toLogin()
}

//判断登录状态
const checkLoginStatus = async function() {
	if (user) {
		// 检查 session_key 是否过期
		let status = await check()
		//已过期
		if (status == 1) {
			//小程序登录态刷新
			loadLoginState()
		} else {

		}
	} else {
		// 无skey，作为首次登录
		toLogin();
	}
}



export {
	checkLoginStatus, //判断登录状态
	toLogin, //跳转至小程序登录页
	loadLoginState //小程序登录态刷新
}
